home *** CD-ROM | disk | FTP | other *** search
GW-BASIC | 1997-03-25 | 10.2 KB | 482 lines |
- 10 'CPYHCAL - COPY HCAL - 02 JUN 94 rev. 25 MAR 97
- 20 IF EX$=""THEN EX$="EXIT"
- 30 ON ERROR GOTO 220
- 40 CLS:KEY OFF
- 50 COLOR 7,0,1
- 60 UL$=STRING$(80,205)
- 70 X$=STRING$(80,32)
- 80 GOSUB 4180 'warning notice
- 90 Z$=INKEY$:IF Z$=""THEN 90
- 100 IF Z$="*"THEN COLOR 7,0,0:CLS:RUN EX$ ELSE 130
- 110 GOTO 90
- 120 '
- 130 GOSUB 2190 'get number of docfile files
- 140 DIM D$(ND) 'docfile files
- 150 RP=200 'files space reserved for programs
- 160 DIM P$(RP) 'program files
- 170 FOR Z=1 TO ND:READ D$(Z):NEXT Z 'text files
- 180 FOR Z=1 TO RP:READ P$(Z):NEXT Z 'program files
- 190 NP=Z-1 'number of program files
- 200 GOTO 270
- 210 '
- 220 '.....error trap
- 230 IF ERR=75 THEN RESUME NEXT
- 240 IF ERR=4 AND ERL=180 THEN RESUME 190
- 250 CLS:PRINT "Error ";ERR;" in line ";ERL:END
- 260 '
- 270 '.....start
- 280 PRINT " HAMCALC DISK COPY UTILITY............."
- 290 PRINT UL$;
- 300 COLOR 15,1,7:CLS
- 310 OPEN"I",1,"\DATA\DOCFILES\CPYHCAL.TXT" 'screen instructions
- 320 LN=2 'line number
- 330 IF EOF(1)THEN 380
- 340 INPUT#1,A$
- 350 LN=LN+1:PRINT TAB(3);A$;
- 360 IF LN<24 THEN PRINT "":GOTO 330
- 370 GOSUB 4690:LN=0:COLOR 15,1,7:CLS:GOTO 330
- 380 CLOSE
- 390 GOSUB 4690 'dump screen
- 400 LOCATE 25,1:PRINT STRING$(80,219);
- 410 COLOR 14,6
- 420 LOCATE 23,18:PRINT " Press <0> to quit now or <1> to continue...."
- 430 COLOR 7,0
- 440 Z$=INKEY$
- 450 IF Z$="0"THEN CLS:RUN EX$
- 460 IF Z$="1"THEN CLS:GOTO 490
- 470 GOTO 440
- 480 '
- 490 COLOR 7,0,1
- 500 PRINT
- 510 PRINT TAB(7);
- 520 PRINT "Make sure that SOURCE and TARGET disks are each in their drives, ";
- 530 PRINT TAB(7);
- 540 PRINT "then ENTER the following information........."
- 550 PRINT
- 560 COLOR 15,4:PRINT " SOURCE ";:COLOR 7,0
- 570 INPUT "disk containing HAMCALC is in Drive (enter letter).....";Z$
- 580 IF Z$=""THEN 560
- 590 Z$=LEFT$(Z$,1):IF ASC(Z$)>96 AND ASC(Z$)<123 THEN Z$=CHR$(ASC(Z$)-32)
- 600 SO$=Z$+":"
- 610 COLOR 15,4:PRINT " TARGET ";:COLOR 7,0
- 620 INPUT "disk to receive HAMCALC is in Drive (enter letter).....";Z$
- 630 IF Z$=""THEN 610
- 640 Z$=LEFT$(Z$,1):IF ASC(Z$)>96 AND ASC(Z$)<123 THEN Z$=CHR$(ASC(Z$)-32)
- 650 DR$=Z$+":"
- 660 PRINT UL$;
- 670 '
- 680 IF DR$=SO$THEN 760
- 690 PRINT "Please confirm that"
- 700 PRINT
- 710 COLOR 15,4:PRINT " SOURCE ";:COLOR 7,0
- 720 PRINT " disk containing HAMCALC is in ";
- 730 COLOR 15,4:PRINT " Drive ";SO$
- 740 PRINT
- 750 COLOR 15,4:PRINT " TARGET ";:COLOR 7,0
- 760 PRINT " disk to receive HAMCALC is in ";
- 770 COLOR 15,4:PRINT " Drive ";DR$
- 780 PRINT
- 790 PRINT " Are you ready to copy HAMCALC from Drive ";SO$;" to Drive ";DR$;
- 800 PRINT "? (y/n)":COLOR 7,0
- 810 COLOR 7,0
- 820 Z$=INKEY$
- 830 IF Z$="n"OR Z$="N"THEN CLS:RUN EX$
- 840 IF Z$="y"OR Z$="Y"THEN 870
- 850 GOTO 820
- 860 '
- 870 '.....make directories
- 880 CLS
- 890 PRINT
- 900 PRINT " We are about to copy all the HAMCALC files ";
- 910 PRINT "from Drive ";SO$;" to Drive ";DR$
- 920 PRINT
- 930 PRINT
- 940 PRINT
- 950 PRINT " Press any key to continue, then";
- 960 COLOR 15,4:PRINT " PUT YOUR HANDS IN YOUR POCKETS ":COLOR 7,0
- 970 PRINT
- 980 COLOR 7,0:PRINT " until you see the";
- 990 COLOR 15,1:PRINT " Copying Completed ";
- 1000 COLOR 7,0:PRINT "message............."
- 1010 PRINT
- 1020 PRINT " (It will take several minutes......)"
- 1030 IF INKEY$=""THEN 1030
- 1040 T1=TIMER 'start timer
- 1050 CLS
- 1060 LOCATE 2,3:PRINT " CREATING DIRECTORIES - PLEASE WAIT........."
- 1070 '
- 1080 '.....create directories
- 1090 Z$=DR$+"\bas"
- 1100 MKDIR Z$
- 1110 Y$=Z$+"\menu"
- 1120 MKDIR Y$
- 1130 X$=Z$+"\prog"
- 1140 MKDIR X$
- 1150 Z$=DR$+"\data"
- 1160 MKDIR Z$
- 1170 Y$=Z$+"\latlong"
- 1180 MKDIR Y$
- 1190 X$=Z$+"\batt"
- 1200 MKDIR X$
- 1210 W$=Z$+"\docfiles"
- 1220 MKDIR W$
- 1230 V$=Z$+"\index"
- 1240 MKDIR V$
- 1250 '
- 1260 '.....COPY FILES
- 1270 CLS
- 1280 COLOR 0,7
- 1290 PRINT " Copying Menu & Data Files: "
- 1300 COLOR 7,0
- 1310 PRINT UL$;
- 1320 '
- 1330 Z$="copy "+SO$+"\VE3ERP.BAT "+DR$+"\"
- 1340 PRINT Z$:SHELL Z$
- 1350 PRINT UL$;
- 1360 '
- 1370 '.....\BAS directory
- 1380 Z$="copy "+SO$+"\bas\GWBASIC.EXE "+DR$+"\bas"
- 1390 PRINT Z$:SHELL Z$
- 1400 PRINT UL$;
- 1410 '
- 1420 '.....\BAS\MENU directory
- 1430 Z$="copy "+SO$+"\bas\menu\HCAL.BAS "+DR$+"\bas\menu"
- 1440 PRINT Z$:SHELL Z$
- 1450 Z$="copy "+SO$+"\bas\menu\HCAL-A.BAS "+DR$+"\bas\menu"
- 1460 PRINT Z$:SHELL Z$
- 1470 Z$="copy "+SO$+"\bas\menu\HCAL-B.BAS "+DR$+"\bas\menu"
- 1480 PRINT Z$:SHELL Z$
- 1490 Z$="copy "+SO$+"\bas\menu\HCAL-C.BAS "+DR$+"\bas\menu"
- 1500 PRINT Z$:SHELL Z$
- 1510 Z$="copy "+SO$+"\bas\menu\HCAL-D.BAS "+DR$+"\bas\menu"
- 1520 PRINT Z$:SHELL Z$
- 1530 Z$="copy "+SO$+"\bas\menu\HCAL-E.BAS "+DR$+"\bas\menu"
- 1540 PRINT Z$:SHELL Z$
- 1550 Z$="copy "+SO$+"\bas\menu\HCAL-X.BAS "+DR$+"\bas\menu"
- 1560 PRINT Z$:SHELL Z$
- 1570 PRINT UL$;
- 1580 '
- 1590 '.....\DATA directory
- 1600 Z$="copy "+SO$+"\data\COAXIAL.FIL "+DR$+"\data
- 1610 PRINT Z$:SHELL Z$
- 1620 Z$="copy "+SO$+"\data\SUNCLOCK.FIL "+DR$+"\data
- 1630 PRINT Z$:SHELL Z$
- 1640 Z$="copy "+SO$+"\data\latlong\LATLONG.DAT "+DR$+"\data\latlong"
- 1650 PRINT Z$:SHELL Z$
- 1660 Z$="copy "+SO$+"\data\batt\BATTERY.DAT "+DR$+"\data\batt"
- 1670 PRINT Z$:SHELL Z$
- 1680 PRINT UL$;
- 1690 '
- 1700 '.....\DATA\DOCFILES directory
- 1710 FOR Z=1 TO ND
- 1720 Z$="copy "+SO$+"\data\docfiles\"+D$(Z)+" "+DR$+"\data\docfiles"
- 1730 PRINT Z$:SHELL Z$
- 1740 NEXT Z
- 1750 PRINT UL$;
- 1760 '
- 1770 '.....\DATA\INDEX directory
- 1780 Z$="copy "+SO$+"\data\index\RPTRDEX.FIL "+DR$+"\data\index"
- 1790 PRINT Z$:SHELL Z$
- 1800 Z$="copy "+SO$+"\data\index\HAMDEX.FIL "+DR$+"\data\index"
- 1810 PRINT Z$:SHELL Z$
- 1820 PRINT UL$
- 1830 '
- 1840 '.....\BAS\PROG directory
- 1850 CLS
- 1860 PRINT TAB(24)"Copying";NP;"GWBASIC Program Files:"
- 1870 '
- 1880 TIM=TIMER
- 1890 FOR Z=1 TO NP
- 1900 EST=NP/12 'estimated copy time
- 1910 ETA=(TIMER-TIM+EST)/Z*(NP-Z)/60
- 1920 IF ETA>15 THEN ETA=15
- 1930 VIEW PRINT 2 TO 3:CLS:VIEW PRINT
- 1940 Z$="copy "+SO$+"\bas\prog\"+P$(Z)+".BAS "+DR$+"\bas\prog"
- 1950 COLOR 0,7:LOCATE 2,12
- 1960 PRINT USING "####.#";Z/NP*100;:PRINT"% copied,";USING "####";NP-Z;:
- 1970 PRINT " files and about";USING "###.###";ETA;:PRINT " minutes to go "
- 1980 COLOR 7,0:PRINT Z$
- 1990 SHELL Z$
- 2000 NEXT Z
- 2010 '
- 2020 VIEW PRINT 3 TO 6:CLS:VIEW PRINT:LOCATE 3
- 2030 PRINT UL$;
- 2040 T2=(TIMER-T1)/60 'decimal minutes
- 2050 MIN=INT(T2)
- 2060 SEC=(T2-MIN)*60
- 2070 LOCATE 3,19
- 2080 PRINT " Total elapsed copying time:";MIN;"min.";USING"###";SEC;
- 2090 PRINT " sec. ";
- 2100 COLOR 7,0
- 2110 '
- 2120 LOCATE 25,20:COLOR 15,1
- 2130 PRINT " COPYING COMPLETED......PRESS ANY KEY.... ";
- 2140 COLOR 7,0:BEEP
- 2150 IF INKEY$=""THEN 2150
- 2160 RUN"\bas\menu\hcal"
- 2170 END
- 2180 '
- 2190 '.....DOCFILE text files
- 2200 DATA ANTENNA.DOC
- 2210 DATA NEWSINCE.DOC
- 2220 DATA ACKNOW.FIL
- 2230 DATA CPYHCAL.TXT
- 2240 DATA DISHANT.TXT
- 2250 DATA INTRO.TXT
- 2260 DATA TRAPDSGN.TXT
- 2270 DATA UNINSTAL.TXT
- 2280 '
- 2290 ND=8:RETURN 'number of docfile files
- 2300 END
- 2310 '
- 2320 '.....BASIC programs
- 2330 DATA 555TIMER
- 2340 DATA ACCALC
- 2350 DATA AIRCORE
- 2360 DATA ANTENNA
- 2370 DATA ANTFIELD
- 2380 DATA ANTMATCH
- 2390 DATA ANTSCALE
- 2400 DATA ATTENPAD
- 2410 DATA AUDFILT
- 2420 DATA AUDPASS
- 2430 DATA BANDSTOP
- 2440 DATA BANDWDTH
- 2450 DATA BATTERY
- 2460 DATA BOBTAIL
- 2470 DATA BRIDGE
- 2480 DATA BUTTFILT
- 2490 DATA CALTODAY
- 2500 DATA CAPACVAL
- 2510 DATA CAPTANCE
- 2520 DATA CAPTRIM
- 2530 DATA CAPYHAT
- 2540 DATA CAPYTEL
- 2550 DATA CCDANTEN
- 2560 DATA CENTFREQ
- 2570 DATA CENTLOAD
- 2580 DATA CIRCFEED
- 2590 DATA COAXCHAR
- 2600 DATA COAXSTUB
- 2610 DATA COAXTRAP
- 2620 DATA COILDSGN
- 2630 DATA COILEQUA
- 2640 DATA COILTAP
- 2650 DATA COLCODE
- 2660 DATA CONJUMAT
- 2670 DATA COPWIRE
- 2680 DATA CPYHCAL
- 2690 DATA CRYSFILT
- 2700 DATA CUSTCAP
- 2710 DATA CUSTOHM
- 2720 DATA CW
- 2730 DATA CYLLOAD
- 2740 DATA DAYS
- 2750 DATA DECIBEL
- 2760 DATA DECIFRAC
- 2770 DATA DISCONE
- 2780 DATA DISHANT
- 2790 DATA DISHMATH
- 2800 DATA DSGNMENU
- 2810 DATA DSGNRC
- 2820 DATA DSGNRLC
- 2830 DATA ELECLENG
- 2840 DATA EXIT
- 2850 DATA EQUIV
- 2860 DATA FATDIPOL
- 2870 DATA FILSTRIP
- 2880 DATA FOLDIPOL
- 2890 DATA FORMULAE
- 2900 DATA G5RV
- 2910 DATA GAMMATCH
- 2920 DATA GRIDSQ
- 2930 DATA GUYWIRES
- 2940 DATA HAIRPIN
- 2950 DATA HAMBANDS
- 2960 DATA HAMDEX
- 2970 DATA HAMSTAIR
- 2980 DATA HARMONIC
- 2990 DATA HATSHAPE
- 3000 DATA HELIX
- 3010 DATA HELPHINT
- 3020 DATA HELRESON
- 3030 DATA HELVERT
- 3040 DATA IMPARES
- 3050 DATA IMPEDCCT
- 3060 DATA IMPEDNET
- 3070 DATA INDUCALC
- 3080 DATA INDUHOSE
- 3090 DATA INSERLOS
- 3100 DATA INTRO
- 3110 DATA INVEE
- 3120 DATA JCALC
- 3130 DATA KFACTOR
- 3140 DATA LADDER2
- 3150 DATA LATLONG
- 3160 DATA LED
- 3170 DATA LINELOSS
- 3180 DATA LM317
- 3190 DATA LOCALRPT
- 3200 DATA LOPASS
- 3210 DATA LOGYAG
- 3220 DATA LOOPANT
- 3230 DATA LOOPSKY
- 3240 DATA L-PAD
- 3250 DATA LPTSETUP
- 3260 DATA NICAD
- 3270 DATA MATCHNET
- 3280 DATA MAXUF
- 3290 DATA METERS
- 3300 DATA METRICS
- 3310 DATA METSHOWR
- 3320 DATA MINILOOP
- 3330 DATA MINIQUAD
- 3340 DATA MOONTRAC
- 3350 DATA MOBILMAT
- 3360 DATA MOWHIP
- 3370 DATA NEWSINCE
- 3380 DATA NMBRSIZE
- 3390 DATA NUMDERIV
- 3400 DATA OHMSLAW
- 3410 DATA OPAMP
- 3420 DATA OPENWIRE
- 3430 DATA PATHFIND
- 3440 DATA PIMATCH
- 3450 DATA PIPESIZE
- 3460 DATA POTENT
- 3470 DATA PRECICAP
- 3480 DATA PRECIRES
- 3490 DATA PRIMENOS
- 3500 DATA PROPCIRC
- 3510 DATA PWRCCT
- 3520 DATA PWRSUPP
- 3530 DATA QRESON
- 3540 DATA QUAD
- 3550 DATA QUADRAT
- 3560 DATA RADANGLE
- 3570 DATA RADIOLOS
- 3580 DATA RCCONST
- 3590 DATA RCFILT
- 3600 DATA RESICOP
- 3610 DATA RESISTIV
- 3620 DATA RESISVAL
- 3630 DATA RISESET
- 3640 DATA SMETER
- 3650 DATA SATORBIT
- 3660 DATA SERIPARA
- 3670 DATA SERISECT
- 3680 DATA SHORTANT
- 3690 DATA SHORTDIP
- 3700 DATA SLOPER
- 3710 DATA SMITHCHT
- 3720 DATA SNGLWIRE
- 3730 DATA SOLUTRI
- 3740 DATA SPEEDTD
- 3750 DATA STAIRS
- 3760 DATA STUBANT
- 3770 DATA SUNCLOCK
- 3780 DATA SWR
- 3790 DATA TANKCCT
- 3800 DATA TELETUBE
- 3810 DATA TIMEZONE
- 3820 DATA TINYCOIL
- 3830 DATA TMATCH
- 3840 DATA TOROID
- 3850 DATA TOROTRAP
- 3860 DATA TRANCCT
- 3870 DATA TRANLINE
- 3880 DATA TRANSMAT
- 3890 DATA TRANSTUB
- 3900 DATA TRAPDSGN
- 3910 DATA TRAPDIP
- 3920 DATA TREE
- 3930 DATA TRUNORTH
- 3940 DATA TUNECCT
- 3950 DATA TVCHAN
- 3960 DATA UNINSTAL
- 3970 DATA VFOFREQ
- 3980 DATA VOLTDIV
- 3990 DATA WINDING
- 4000 DATA WAVETRAP
- 4010 DATA WIRECOND
- 4020 DATA WIREMESH
- 4030 DATA WIRESAG
- 4040 DATA XFMR
- 4050 DATA XMTRZMAT
- 4060 DATA XFMRNARO
- 4070 DATA YAGI3EL
- 4080 DATA YAGILONG
- 4090 DATA YAGISPAC
- 4100 DATA YAGTAPER
- 4110 DATA ZENER
- 4120 DATA ZEPPDBL
- 4130 DATA ZEXIT
- 4140 DATA ZOSTEPUP
- 4150 DATA ZOUNDS
- 4160 'END
- 4170 '
- 4180 '.....warning notice
- 4190 COLOR 14,4,14:CLS
- 4200 TB=7
- 4210 PRINT TAB(33);"W A R N I N G !"
- 4220 PRINT TAB(TB);
- 4230 PRINT " If you are copying HAMCALC to a diskette or hard drive that"
- 4240 PRINT TAB(TB);
- 4250 PRINT "already has HAMCALC installed, ";
- 4260 COLOR 15:PRINT "ALL HAMCALC FILES";
- 4270 COLOR 14:PRINT " on the target disk"
- 4280 PRINT TAB(TB);
- 4290 PRINT "will be over-written by the files on the source disk."
- 4300 'PRINT
- 4310 PRINT TAB(TB);
- 4320 PRINT " The following user-accessible files on a target disk containing a"
- 4330 PRINT TAB(TB);
- 4340 PRINT "previous version of HAMCALC may contain data that you have added"
- 4350 PRINT TAB(TB);
- 4360 PRINT "or edited. If you wish to retain these data files, please copy them"
- 4370 PRINT TAB(TB);
- 4380 PRINT "to a backup disk before installing the new version of HAMCALC on"
- 4390 PRINT TAB(TB);
- 4400 PRINT "the target disk, then copy the files back to the target disk when"
- 4410 PRINT TAB(TB);
- 4420 PRINT "the installation of the new version of HAMCALC has been completed."
- 4430 COLOR 15
- 4440 TA=15
- 4450 PRINT TAB(TA);"\DATA\SUNCLOCK.FIL ( Clock Screen Saver )"
- 4460 PRINT TAB(TA);"\DATA\BATT\BATTERY.DAT ( Battery Schedule )"
- 4470 PRINT TAB(TA);"\DATA\LATLONG\LATLONG.DAT ( Great Circle Paths )"
- 4480 PRINT TAB(TA);"\DATA\INDEX\RPTRDEX.FIL ( Local Repeaters )"
- 4490 COLOR 14
- 4500 PRINT TAB(TB);
- 4510 PRINT " If your target disk contains HAMCALC version 9.3 or earlier, you"
- 4520 PRINT TAB(TB);
- 4530 PRINT "may erase these files AND directories from the root ";
- 4540 PRINT "directory:"
- 4550 COLOR 15
- 4560 PRINT TAB(TA);"\DOCFILES\*.*";TAB(43);"\INDEX\*.*"
- 4570 COLOR 14
- 4580 PRINT TAB(TB);
- 4590 PRINT " If your disk contains v.25 or earlier you may remove these files:"
- 4600 COLOR 15
- 4610 PRINT TAB(TA)"\BAS\PROG\ELECREAD.BAS";TAB(43)"\BAS\PROG\EPSON.BAS"
- 4620 PRINT TAB(TA)"\BAS\PROG\LPTSETUP.BAS";TAB(43)"\DATA\DOCFILES\HAMCALC.DOC"
- 4630 COLOR 14
- 4640 PRINT UL$;
- 4650 PRINT TAB(TA);
- 4660 PRINT "Press * to EXIT, or any other key to continue..........";
- 4670 RETURN
- 4680 '
- 4690 'HARDCOPY
- 4700 GOSUB 4810:LOCATE 25,2:COLOR 14,6
- 4710 PRINT " Press 1 to print screen, 2 to print screen & ";
- 4720 PRINT "advance paper, or 3 to continue.";:COLOR 7,0
- 4730 Z$=INKEY$:IF Z$="3"THEN GOSUB 4810:RETURN
- 4740 IF Z$="1"OR Z$="2"THEN GOSUB 4810:GOTO 4760
- 4750 GOTO 4730
- 4760 FOR QX=1 TO 24:FOR QY=1 TO 80
- 4770 LPRINT CHR$(SCREEN(QX,QY));
- 4780 NEXT QY:NEXT QX
- 4790 IF Z$="2"THEN LPRINT CHR$(12)
- 4800 GOTO 4700
- 4810 LOCATE 25,1:PRINT STRING$(80,32);:RETURN
-